package com.guigu.qingcheng.service;

import com.guigu.qingcheng.pojo.TbOrderItem;
import com.guigu.qingcheng.pojo.TbSku;
import com.guigu.qingcheng.pojo.vo.SpuAndSku;
import com.guigu.qingcheng.utils.PageUtil;

import java.util.List;
import java.util.Map;


/**
*
* @author Jiang
* @date 2020/07/25
*/
public interface TbSkuService {

    /**
     * 查询未下架商品
     */
    Map findsku3();
    /**
     * 查询已下架商品
     */
    Map findsku2();
    /**
     * 查询所有商品
     */
    Map findsku();

    /**
    * 查询所有
    */
    List<TbSku> queryAll();

    /**
    * 分页查询所有
    */
    PageUtil<TbSku> findListAll(Integer pageNum, Integer pageSize);


    /**
    * 按条件分页查询
    */
    PageUtil<TbSku> pageQueryByAll(Integer pageNum, Integer pageSize, TbSku tbSku);


    /**
    * 添加
    */
    boolean saveTbSku(TbSku tbSku);


    /**
    * 修改
    */
    boolean updateTbSku(TbSku tbSku);

    /**
    * 删除
    */
    boolean deleteById(Integer id);


    /**
    * 根据id查询
    */
    TbSku findById(String id);

    /**
     * 根据skuId查询sku和spu连接查询
     */
    SpuAndSku finkSkuAndSpuBySkuId(String id);


    /**
     * 扣减库存
     * @param list
     */
    public boolean deductionStock(List<TbOrderItem> list);



    /**
     * 查询销量最高的四件商品
     * @return
     */
    List<TbSku> findSkuBySaleNum();

    /**
     * 增加库存
     * @param list
     * @return
     */
    boolean deductionStock2(List<TbOrderItem> list);
}
